草庐IT

C++ 实例

全部标签

php - 实例化从 AwsClient 子类扩展的类时出错

我正在像这样扩展我的自定义Sqs类:classSqsextendsSqsClient{publicfunction__construct(){parent::__construct(array('credentials'=>array('key'=>$_ENV['AWS_ACCESS_KEY_ID'],'secret'=>$_ENV['AWS_SECRET_ACCESS_KEY'],),'region'=>'us-west-1','version'=>'latest'));}}然后我像这样实例化和使用它:$sqs=newSqs();$sqs->sendMessage(['QueueUr

php - 使用依赖注入(inject)创建实例?

我正在尝试将DI实现到我的应用程序中。下面是我的路线的一个片段,每个路线都有自己的Controller,其中有一个方法来返回View。$router->addRoute('GET','/',['App\Controllers\Frontend\Guest\LoginController','getView']);假设我有多个Controller,我必须在内部传递一个模板类的实例。classLoginController{private$template;publicfunction__construct(Template$template){$this->template=$templ

php - Amazon EC2 Ubuntu 实例最大文件上传大小

我获得了一个AmazonEC2Ubuntu实例。我们的任务是创建一个包含上传客户端视频的Web应用程序。我在我的本地主机上创建了一个文件上传应用程序,它工作正常。当我将代码迁移到虚拟主机服务器时,我无法上传任何视频,甚至无法上传任何超过2Mb的文件。我尝试编辑php.ini,将upload_max_filesize设置为50M并将post_max_size设置为1000M。在多次重启Apache之后,更新没有反射(reflect)在我的phpinfo()信息中,但更改保存在我的php.ini文件中。我怀疑给我的AmazonEC2实例有文件上传限制,但我不确定我是否正确。如果我错了,我该

php - 为什么加载的 PHP 扩展会在类实例化时失败?

我有一些调整图像大小的代码,使用Imagick或GD,具体取决于服务器上可用的内容。我正在使用extension_loaded()函数测试每一个的可用性。if(extension_loaded('imagick')){$image=newImagick();...}我有一位用户报告说他们收到了:Fatalerror:Class'Imagick'notfound什么情况会导致加载了Imagick扩展但类不可用?我应该如何进行测试以使我的代码更健壮? 最佳答案 1:始终以不区分大小写的方式进行检查(在比较之前将字符串设为小写)2:不检查

php - 通过方法重置类实例变量

有谁知道如何通过类方法重置实例变量。像这样:classsomeClass{var$var1='';var$var2=TRUE;functionsomeMethod(){[...]//thismethodwillaltertheclassvariables}functionreset(){//isitpossibletoresetallclassvariablesfromhere?}}$test=newsomeClass();$test->someMethod();echo$test->var1;$test->reset();$test->someMethod();我知道我可以简单地做$

php - 导致对象实例化的 Foreach 循环

我有一个要求,即从一个表中接受一组选中的项目,并根据已选择的项目更新一个字段。最初我的想法是简单地遍历数组中的每一项并访问特定类中的函数来更新状态。我有点担心这种方法,因为它意味着为循环的每次迭代实例化一个对象以更新相关状态。foreach($exampleas$exampleId){$newExample=newExample($exampleId);$newExample->updateStatus('active');}有没有更好的方法解决这个问题?这似乎是不好的做法,但我正在努力寻找替代方法。 最佳答案 这是一个选项吗?$n

php - 如何使一个类的实例成为另一个类的实例

我有扩展MySQLi类的自定义数据库类MySQLi->query()方法返回带有MySQLi_Result类的对象,但我想扩展此类的功能并以某种方式使结果对象成为MyResult类。像这样:classMyResultextendsMySQLi_Result{functionabc(){//...}}classMyDBextendsMySQLi{functionq($query){return/*Heresomemagic*/$this->query();}}$db=newMyDB();$res=$db->q('SEL...');$res->abc();如何做到这一点?编辑:有人说这是重

php - 类实例化语法 - 看不懂

我是PHP新手,最近正在阅读“PHPinAction”一书很好。但我不明白的是它的ClassInitiation语法。它经常使用这样的语法$config=newConfig;谁能解释一下为什么他要这样实例化,我的意思是没有括号?是否有googPHP书籍可用于通过作业学习OOP? 最佳答案 PHP不是唯一支持此功能的语言。如果构造函数不带参数,C++也允许绕过括号。选择您在代码周围看到的任何一个-即,如果公司为默认构造函数省略了括号,您也应该将它们省略,反之亦然。两者都是合法的。 关于ph

php - 通过 PHP SSH 连接到 Amazon EC2 实例

尝试使用.pem文件、PHP和phpseclib连接到AmazonEC2实例。我已经尝试过这篇文章中提到的内容:sshaccesstoec2fromphp但是,我不断收到“错误111。连接在...中被拒绝”当我使用ssh和相同的.pem文件从我自己的机器连接时,没有错误。这是我使用的原始帖子中的代码:include('Net/SSH2.php');include('Crypt/RSA.php');$key=newCrypt_RSA();$key->loadKey(file_get_contents('/pathtokey.pem'));$ssh=newNet_SSH2('ec2-xxx

php - 在 php 类方法中使最后一个数组参数可选 (C)

我正在用C语言创建一个PHP扩展来访问SPI接口(interface)。到目前为止,我几乎已经完成了所有工作:php_spionGithub但是,我似乎无法将构造函数中的$options参数设为可选。我的工作代码是这样的:if(zend_parse_parameters(ZEND_NUM_ARGS()TSRMLS_CC,"lla",&bus,&chipselect,&options)==FAILURE){return;}_this_zval=getThis();_this_ce=Z_OBJCE_P(_this_zval);options_hash=HASH_OF(options);ch